﻿using System;
using ibba.src.sl.componentes;

namespace ibba.src.noriskbo.code.BarraBotoes
{
    public class VisibilidadeBotoesPerfilDigitador: VisibilidadeBotoes
    {
        public VisibilidadeBotoesPerfilDigitador(ControlMenuBar pBarraBotoes)
            : base(pBarraBotoes)
        { }

        public override void AdicionarComponente(IVisibilidadeBotoes pVisibilidadeBotao)
        {
            throw new NotImplementedException();
        }

        protected override void AlterarVisibilidadeEspecializado(string pStatus, string pUsuario, Enumerador.eAcaoBotao pAcao)
        {
            if (PerfilHelper.IsDigitador)
            {
                switch (pStatus)
                {
                    case Constantes.StatusFluxoLM.APROVADO:
                        //case Constantes.StatusFluxoLM.BAIXA_OPERACIONAL:
                        base.BarraBotoes.AlterarVisibilidadeBotao(Constantes.SourceImagem.BOTAO_COPIAR.ToString(), true);
                        break;

                    case Constantes.StatusFluxoLM.RASCUNHO:
                        switch (pAcao)
                        {
                            case Enumerador.eAcaoBotao.Consulta:
                                base.BarraBotoes.AlterarVisibilidadeBotao(Constantes.SourceImagem.BOTAO_EDITAR.ToString(), true);
                                base.BarraBotoes.AlterarVisibilidadeBotao(Constantes.SourceImagem.BOTAO_EXCLUIR.ToString(), true);
                                base.BarraBotoes.AlterarVisibilidadeBotao(Constantes.SourceImagem.BOTAO_SOLICITAR_APROVACAO.ToString(), true);
                                break;

                            case Enumerador.eAcaoBotao.Inclusao:
                            case Enumerador.eAcaoBotao.Alteracao:
                                base.BarraBotoes.AlterarVisibilidadeBotao(Constantes.SourceImagem.BOTAO_SALVAR.ToString(), true);
                                break;

                            default: 
                                break;
                        }
                        break;
                                           
                    case "-":
                        //Registro automatico
                        base.BarraBotoes.AlterarVisibilidadeBotao(Constantes.SourceImagem.BOTAO_COPIAR.ToString(), true);
                        base.BarraBotoes.AlterarVisibilidadeBotao(Constantes.SourceImageApp.BOTAO_BAIXA_OPERACIONAL.ToString(), true);
                        break;

                    default:
                        break;
                }

            }
        }
        
    }
}
